package dwei.view
{
	import flash.events.IEventDispatcher;
	
	import mx.core.IUIComponent;
	import mx.core.IUID;
	import mx.effects.Effect;
	
	public interface IUI extends IEventDispatcher, IUID, IUIComponent
	{
		/**
		 * 譔显示对象所在的层，数字大的会挡住数字小的显示对象
		 */		
		function get layer():uint;
		/**
		 * 是否排斥同一层的显示对象。如果为 true，则会先移除同层的其它所有显示对象
		 */		
		function get exclude():Boolean;
		/**
		 * 显示对象垂直对齐方式。支持 <code>top, middle, bottom</code>，可由 <code>UISize</code> 的静态常量指定。
		 * 如果指定的不是其中之一，则不自动计算显示对象位置
		 */		
		function get verticalAlign():String;
		/**
		 * 显示对象水平对齐方式。支持 <code>left, center, right</code>，可由 <code>UISize</code> 的静态常量指定。
		 * 如果指定的不是其中之一，则不自动计算显示对象位置
		 */		
		function get horizontalAlign():String;
		/**
		 * 指定显示对象显示的时间（单位：毫秒），不包括添加和移除效果的播放时间。如果为0，表示不会自动移除该显示对象
		 */		
		function get delay():uint;
		/**
		 * 显示对象被添加到显示列表时的动画效果（计算时会经常调用该属性，最好在构造函数中初始化，保证在整个实例中该属性返回的是同一个对象）
		 */		
		function get addedEffect():Effect;
		/**
		 * 显示对象从显示列表移除时的动画效果（计算时会经常调用该属性，最好在构造函数中初始化，保证在整个实例中该属性返回的是同一个对象）
		 */		
		function get removedEffect():Effect;
	}
}